// 组件入口函数
// 📋 分页步骤
let params = { limit: 30, order:'new', skip:0 };
Component({
  // 组件绑定的数据
  data: { 
    // 📶 2. 初始化数据 
    banner: [],  // 焦点图初始化数据
    album: [],   // 专辑列表初始化数据
    hasMore: true, // 是否还有更多数据
  },
  // 组件内封装的函数写这里
  methods: {
    // 发送请求获取数据
    getRequest(){
      // 请求三要素 - 根据后端服务器文档要求填写
      //   - url     请求地址
      //   - method  请求方式
      //   - data    请求参数
      wx.request({
        url: 'http://157.122.54.189:9088/image/v1/wallpaper/album',
        method:'GET',
        // 📋 分页步骤
        data: params,
        success: (result)=>{
          // console.log(result);
          // 📶 1. 从数据中提取到轮播图数据和专辑数据
          const { album, banner } = result.data.res;
          console.log(album, banner);
          // 如果专辑列表的长度为 0
          if(album.length === 0){
            // 没有数据了就把 hasMore 改为 false
            this.setData({ hasMore: false });
            return;
          }
          // 📶 3. 更新绑定的数据 
          this.setData({
            banner,
            // 📋 分页步骤，新旧数组连接
            album: [...this.data.album, ...album], 
          });
        }
      })
    },
    // 滚动触底
    toBottom(){
      // 如果没有数据了，就不发送请求了
      if(this.data.hasMore === false){ return; }
      // 📋 分页步骤，跳过前30条
      params.skip += params.limit;
      this.getRequest();
    }
  },
  // 生命周期
  lifetimes:{
    // 组件添加到页面时
    attached(){
      // 发送 获取数据
      this.getRequest();
    },
    // 组件在页面中移除的时候
    detached(){
      // 从 0 开始
      params.skip = 0;
    }
  }
})
